Automated handtool task verification

ABSTRACT

A method of automated handheld tool task verification is disclosed. In one embodiment, at least one operating parameter for performing a task is received at a handheld tool. It is then verified at the handheld tool that it is configured with the at least one operating parameter. The handheld tool then generates data verifying that the task was performed in accordance with the at least one operating parameter.

CROSS-REFERENCE TO RELATED APPLICATIONS

This Application claims priority to U.S. Provisional Application No.61/564,639, filed Nov. 29, 2011, titled “Automated Hand Tool TaskVerification,” by Kent Kahle et al., assigned to the assignee of thepresent application, and hereby incorporated by reference in itsentirety.

This Application is related to U.S. patent application Ser. No.13/689,519 by Kent Kahle et al., filed on Nov. 29, 2012, titled“Managing Information at a Construction Site,” and assigned to theassignee of the present patent application.

This Application is related to U.S. patent application Ser. No.13/689,529 by Kent Kahle et al., filed on Nov. 29, 2012, titled“Referenced Based Positioning of Handheld Tools,” and assigned to theassignee of the present patent application.

This Application is related to U.S. patent application Ser. No.13/689,548 by Kent Kahle et al., filed on Nov. 29, 2012, titled“Integration of as Built Data of a Project,” and assigned to theassignee of the present patent application.

This Application is related to U.S. patent application Ser. No.13/689,556 by Kent Kahle et al., filed on Nov. 29, 2012, titled“Integrating Position Information into a Handheld Tool,” and assigned tothe assignee of the present patent application.

This Application is related to U.S. patent application Ser. No.13/689,575 by Kent Kahle et al., filed on Nov. 29, 2012, titled“Application Information for Power Tools,” and assigned to the assigneeof the present patent application.

BACKGROUND

During the operations involved with erecting a building, or otherstructure, there are a wide variety of tasks performed every day whichutilize positioning information and positioning tools. This includesmoving soil, pouring foundations and footers, erecting walls and roofs,and installing interior systems such as HVAC, plumbing, electrical,sprinklers, as well as interior walls and finishing. Typically, theseare manually performed operations using tape measures, electronic layouttools (e.g., plumb lasers and digital levels), distance meters, and evensurvey-type instruments. These tools are used to layout the dimensionsof the structures being built. Additionally, these layout tools areoften operated by a single user who marks the position of a particularfeature while another user installs or builds the feature at the markedposition. For example, an operator of an electronic plumb laser markspositions on a wall where holes are to be drilled. Later, another workeractually drills the holes at the indicated positions.

When a project is completed, the final construction drawings aregenerated which are intended to show where features of a building areactually located. For example, during the course of erecting a building,pipes may have to be re-routed around a structural member. As a result,the actual building is not reflected in the original constructiondrawings. When this is not shown on the original construction drawings,they are amended on the fly so that they show the features of thebuilding as built. Again, this is often performed manually so that thefinal construction drawings are an accurate representation of thebuilding as completed.

SUMMARY

A method of automated handheld tool task verification is disclosed. Inone embodiment, at least one operating parameter for performing a taskis received at a handheld tool. It is then verified at the handheld toolthat it is configured with the at least one operating parameter. Thehandheld tool then generates data verifying that the task was performedin accordance with the at least one operating parameter.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and form a part ofthis application, illustrate embodiments of the subject matter, andtogether with the description of embodiments, serve to explain theprinciples of the embodiments of the subject matter. Unless noted, thedrawings referred to in this brief description of drawings should beunderstood as not being drawn to scale.

FIG. 1 shows an information management network in accordance with anembodiment.

FIG. 2 is a block diagram of an example computer system in accordancewith an embodiment.

FIG. 3 shows information management network in accordance with anembodiment.

FIG. 4 is a flowchart of a method for managing information at aconstruction site in accordance with one embodiment.

FIGS. 5A, 5B, and 5C show different configurations of components ofinformation management network in accordance with various embodiments.

FIG. 6 is a block diagram of an example positioning infrastructure inaccordance with one embodiment.

FIG. 7 is a block diagram of an example reporting source in accordancewith one embodiment.

FIG. 8 is a block diagram of an example tool position detector inaccordance with one embodiment.

FIG. 9 is a block diagram of an example user interface in accordancewith one embodiment.

FIG. 10, shows an example Global Navigation Satellite System (GNSS)receiver in accordance with one embodiment.

FIG. 11 is a flowchart of a method fir automated handheld tool taskverification in accordance with at least one embodiment.

DESCRIPTION OF EMBODIMENTS

Reference will now be made in detail to various embodiments, examples ofwhich are illustrated the accompanying drawings. While the subjectmatter will be described in conjunction with these embodiments, it beunderstood that they are not intended to limit the subject matter tothese embodiments. On the contrary, the subject matter described hereinis intended to cover alternatives, modifications and equivalents, whichmay be included within the spirit and scope as defined by the appendedclaims. In some embodiments, all or portions of the electronic computingdevices, units, and components described herein are implemented inhardware, a combination of hardware and firmware, a combination ofhardware and computer-executable instructions, or the like. In oneembodiment, the computer-executable instructions are stored in anon-transitory computer-readable storage medium. Furthermore, in thefollowing description, numerous specific details are set forth in orderto provide a thorough understanding of the subject matter. However, someembodiments may be practiced without these specific details. In otherinstances, well-known methods, procedures, objects, and circuits havenot been described in detail as not to unnecessarily obscure aspects ofthe subject matter.

Notation and Nomenclature

Unless specifically stated otherwise as apparent from the followingdiscussions, it is appreciated that throughout the present Descriptionof Embodiments, discussions utilizing terms such as “receiving,”“verifying,” “generating,” “detecting,” “determining,” “capturing,”“reporting ” “conveying,” “using,” or the like, often (but not always)refer to the actions and processes of a computer system or similarelectronic computing device such as, but not limited to, a display unit,a reporting unit, an information management system, a tool interface, orcomponent thereof. The electronic computing device manipulates andtransforms data represented as physical (electronic) quantities withinthe electronic computing device's processors, registers, and/or memoriesinto other data similarly represented as physical quantities within theelectronic computing device's memories, registers and/or other suchinformation storage, processing, transmission, or/or display componentsof the electronic computing device or other electronic computingdevice(s).

The term “handheld tool” is used often herein. By “handheld tool” whatis meant is a man-portable device that is used in the constructiontrade. Some non-limiting examples of handheld tools include manualtools, power tools (e.g., tools powered by electricity, an internalbattery, compressed air, an internal combustion engine, or the like),and powder-actuated tools. Handheld tools are often utilized for taskssuch as drilling, sawing, cutting, and installing various types offasteners.

Overview of Discussion

Discussion begins with a description of an information managementnetwork in accordance with one embodiment. Example units, systems, andmethods for construction site management and reporting are describedherein. Discussion continues with a description of an informationmanagement network in accordance with various embodiments along withdescription of some example configurations of components of theinformation management network. An example positioning infrastructure isdescribed. An example reporting source is described, as are an exampletool position detector and an example tool user interface. An exampleglobal navigation satellite system (GNSS) receiver is described.Finally, a method and system for automated hand tool task verificationis discussed

Information Management Network

FIG. 1 shows an information management network 100 in accordance with anembodiment. In FIG. 1, an information management system 101, comprisingcomputer 102 and database 103, receives asset information (e.g., assetreport 111) from a reporting source 110. In response to user requests,in response to the occurrence of a defined event, or automatically basedupon a pre-determined time interval, report generator 106 of informationmanagement system 101 generates reports 150 to positioninginfrastructure 140. Similarly, reporting source 110 can generate assetreport 111 in response to user requests, in response to the occurrenceof a defined event, or automatically based upon a pre-determined timeinterval. In accordance with various embodiments, task data 131comprises data describing events, conditions, and parameters which arerecorded at a site. For example, handheld tool 120 can be used to reportoperating parameters which were implemented upon handheld tool in theperformance of a task. Similarly, handheld tool 120 can record thecondition of an item such as a structure, a tool, etc. back toinformation management system 101. It is noted that the recording, andreporting, of this information can occur in real-time, and can includeconditions before, during, and after a task have been performed. Thisinformation can be used to verify that operations performed by handheldtool 120 were performed in accordance with pre-determined parameters andcan show the condition of the finished task. In general, reports 150comprise data, warnings, or other messages which assist in thecompletion of a task. In one embodiment, positioning infrastructure 140can generate position data 141 in response to report 150 which is usedto assist an operator in positioning and orienting handheld tool 120 atthe correct location to perform a particular task. In one embodiment,user interface 130 is used to direct the operator in positioning andorienting handheld tool 120. It is noted that information managementnetwork 100, as well as components thereof such as informationmanagement system 101, can be implemented in a cloud computingenvironment in accordance with various embodiments.

In accordance with one embodiment, database 103 can store and retrievetask data 131 and use that data to generate reports 150. The reports 150can be used to convey details of a task to be performed such as theposition where the task is to be performed, operating parameters whenperforming the task, alerts, updated scheduling information, or updatedblueprints 105 based upon received task data 131, etc. For example,report 150 may comprise a data file (e.g., a computer-aided design (CAD)file), or other building information modeling data, which shows thelocation within a room where certain tasks, such as drilling holes, areto be performed. Using this information, positioning infrastructure 140can generate cues which the operator of handheld tool 120 uses toproperly place the working end (e.g., the drill bit) at the correctlocation to drill a hole. Positioning infrastructure 140 can alsogenerate cues which direct the operator to change thealignment/orientation of handheld toot 120 so that the hole is drilledin the proper direction. As a result, separate steps of laying out andmarking the positions where operations are to be performed, as welt asperforming the actual operation itself, can be performed by a singleoperator in one step. Positioning infrastructure 140 is also configuredto determine how far handheld tool 120 has travelled while performing atask, such as drilling a hole, and can generate a message telling theoperator of handheld tool 120 to stop drilling when the hole issufficiently deep. Alternatively, the message from positioninginfrastructure 140 can cause handheld tool 120 to automatically shutdown when a task is completed. In another embodiment, this message canbe generated by information management system 101. This is possible inpart because handheld tool 120 is configured with a tool positiondetector 121. As will be discussed in greater detail below, toolposition detector 121 is configured to determine the position of theworking end of handheld tool 120 based upon a local, or global referencesystem. Additionally, tool position detector 121 can be configured todetermine the alignment/orientation (e.g., azimuth and tilt) of handheldtool 120. Alternatively, tool position detector 121 is coupled withpositioning infrastructure 140 rather than with handheld tool 120.

Upon completion of a task, task data 131 is sent from handheld tool 120to a reporting source 110. Reporting source 110 then generates an assetreport 111 to information management system 101 which facilitatestracking the progress of work at the construction site and automaticallyupdating records such as blueprints 105 in real-time using recordupdater 107 so that they reflect the as-built configuration of thebuilding. It is noted that the functions described which are attributedto positioning infrastructure 140, tool position detector 121, userinterface 130 and reporting source 110 can be implemented in a varietyof configurations. In one embodiment, all of these functions areintegrated into a single device. This device can be coupled with,mounted upon, or integrated within handheld tool 120. In anotherembodiment, some of the above functions (e.g., reporting source 110,positioning infrastructure 140, and/or user interface 130 can beintegrated into a handheld device such as a personal computer system,personal digital assistant (PDA), a “smart phone”, or a dedicateddevice. This device is in communication with handheld tool 120 whichfurther comprises tool position detector 121 and, optionally, anadditional user interface 130. It is noted that a plurality of handheldtools 120 can send task data to a reporting source 110 in accordancewith one embodiment. Similarly, a plurality of handheld tools 120 canreceive position data 141 from a single positioning infrastructure inaccordance with one embodiment.

Additionally, information management system 101 can prevent inadvertentdamage to structures within a building. As an example, blueprints 105can contain information such as the location of mechanical, electrical,and plumbing features (e.g., pipes, electrical conduits, ventilationducts, etc.) which have already been built, or will be later. Becauseasset report 111 provides real-time data on actions performed at aconstruction site, information management system 101 can determinewhether an operator of handheld tool 120 is performing an action whichmay damage other structures or interfere with the installation ofsubsequent structures. Information management system 101 can generate awarning (e.g., report 150) to the operator of handheld tool 120 prior tobeginning a task so that the operator is aware of the potential damagethat could be caused. In one embodiment, positioning infrastructure 140,and information management system 101, can monitor the position ofhandheld tool 120 in real-time and generate a message which causeshandheld tool 120 to automatically shut down to prevent damaging otherstructures. Additionally, user interface 130 can display, for example, apicture of a all with the underlying structures overlaid to representtheir positions, or a blueprint of the wall with the same information.Again, this means that separate steps of laying out and marking thelocations of existing structures are not necessary as the operator ofhandheld tool 120 can be provided that information directly.

Furthermore, due to the asset management capabilities described herein asignificant business management tool is realized. That is, becauseinformation management system 101 is useful at all levels of assetmanagement, the information management system 101 provides significantvalue added features. For example, the asset reports 111 can providereal-tune reporting on the progress of a particular task to allowchanging the workflow implemented at a construction site. Informationmanagement system 101 can also be used to track the maintenance scheduleof handheld tool 120, monitor the performance of handheld tool 120, andto track. the service of “consumables” such as drill bits and sawblades. Furthermore, this can be linked with the material being workedupon. For example, knowing whether concrete or steel is being drilledcan significantly change the parameters regarding the life of theconsumables, safety, and operator performance, as well whether work isprogressing at a satisfactory pace and/or whether to generate alerts.

As an example, if asset report 111 indicates that it is taking longerthan expected to drill holes using handheld tool 120, informationmanagement system 101 can determine whether the drill bit being used byhandheld tool 120 is in need of replacement, or if handheld tool 120itself is in need of maintenance. Determination of how long it takes toperform a task can be based upon, for example, the start time and finishtime for a task as reported by handheld tool 120, or the distancehandheld tool 120 has moved in performing a task as reported bypositioning infrastructure 140. Additionally, as the location of theconsumables and handheld tools can be monitored by informationmanagement system 101, the process of locating them in order toimplement needed repairs is facilitated. This may also includemaintaining inventory of consumables so that sufficient stores aremaintained at the construction site to prevent unnecessary delays.Alternatively, it may be that an operator of handheld tool 120 is notexerting enough force which causes the drilling of holes to take longerthan expected. In one embodiment, information management system 101 canmake this determination and generate a report 150 in real-time to theoperator of handheld tool 120 which explains that more force should beexerted upon handheld tool 120. Additionally, information managementsystem 101 can ensure that the proper tools, personnel, and other assetsare at the correct location at the correct time to perform a particulartask. As an example, information management system 101 can ensure that agenerator is at the construction site to provide power to handheld tool120 as well as the correct fasteners for a particular task. This datacan also be used to track the life of handheld tools, consumables, etc.,from various providers to determine which provider provides a superiorproduct. For example, if drill bits from one provider have a servicelife 20% lower than those from a second provider, it may indicate thatthe second provider sells a superior product.

In another embodiment, information management system 101 can monitorworkplace safety in real-time. For example, database 103 can maintain arecord of what handheld tools a particular operator is allowed to use.In one embodiment, for example user interface 130 can identify anoperator via manual login (such as by operator input of a personallyidentifying code), automatic electronic login (such as by sensing anpersonally identifying information provided wirelessly by an RFID badgeworn by the employee), or combination thereof. Thus, if the operator hasnot been trained how to operate a particular handheld tool, workplacesafety, or other relevant information, information management system 101can generate a report 150 which indicates this to the operator. In oneembodiment, report 150 may disable handheld tool 120 such that theoperator cannot use handheld tool 120 until the required training hasbeen recorded in database 103. Furthermore, information managementsystem 101 can be used to monitor how quickly a particular operator isat performing a task. This information can be used to determine whetheradditional training and/or supervision is need for that particularoperator. In various embodiments, additional sensor devices (e.g.,sensors 550 of FIGS. 5A-5C) can be worn by a user and interact withhandheld tool 120. Examples of such sensors include, but are not limitedto, sensors for recording vibration, dust, noise, chemicals, radiation,or other hazardous exposures which can be collected and reported toinformation management system 101 to be used as a record againstpossible health claims.

Additionally, information management system 101 can be used to monitorthe quality of work performed at a construction site. As will bediscussed in greater detail below, various sensors can be used to sendtask data 131 which provide metrics (e.g., operating parameters ofhandheld tool 120 during the performance of a task) for determining howwell various operations have been performed. For example, a sensorcoupled with handheld tool 120 can determine how much torque was appliedto a fastener. This information can be used by, for example, buildinginspectors to assist them in assessing whether a building is being builtin accordance with the building codes. In another example, a cameracoupled with handheld tool 120 can capture an image, images, or videoshowing the work before, during, and after it is performed. The capturedmedia can verify that the hole was cleanly drilled, did not damagesurrounding structures, and that excess material was removed.Furthermore, asset report 111 can not only report what actions have beenperformed at the construction site, but can also report what materialswere used or applied to complete a particular task. Asset report 111 canalso be used to notify in real-time whether materials, or consumables,are being used at a greater than expected rate. For example, an operatorcan generate an asset report via user interface 130 which states that agiven material (e.g., an adhesives is not in stock at the constructionsite.

With reference now to FIG. 2, all or portions of some embodimentsdescribed herein are composed of computer-readable andcomputer-executable instructions that reside, tier example, incomputer-usable/computer-readable storage media of a computer system.That is, FIG. 2 illustrates one example of a type of computer system(computer 102 of FIG. 1) that can be used in accordance with or toimplement various embodiments which are discussed herein, it isappreciated that computer system 102 of FIG. 2 is only an example andthat embodiments as described herein can operate on or within a numberof different computer systems including, but not limited to, generalpurpose networked computer systems, embedded computer systems, serverdevices, various intermediate devices/nodes, stand atone computersystems, handheld computer systems, multi-media devices, and the like.Computer system 102 of FIG. 2 is well adapted to having peripheralcomputer-readable storage media 202 such as, for example, a floppy disk,a compact disc, digital versatile disc, universal serial bus “thumb”drive, removable memory card, and the like coupled thereto.

Computer system 102 of FIG. 2 includes an address/data bus 204 forcommunicating information, and a processor 206A coupled to bus 204 forprocessing information and instructions. As depicted in FIG. 2, computersystem 102 is also well suited to a multi-processor environment in whicha plurality of processors 206A, 206B, and 206C are present. Conversely,computer system 102 is also well suited to having a single processorsuch as, for example, processor 206A. Processors 206A, 206B, and 206Cmay be any of various types of microprocessors. Computer system 102 alsoincludes data storage features such as a computer usable volatile memory208, e.g., random access memory (RAM), coupled to bus 204 for storinginformation and instructions for processors 206A, 206B, and 206C.Computer system 102 also includes computer usable non-volatile memory210, e.g., read only memory (ROM), and coupled to bus 204 for storingstatic information and instructions for processors 206A, 206B, and 206C.Also present in computer system 102 is a data storage unit 212 (e.g., amagnetic or optical disk and disk drive) coupled to bus 204 for storinginformation and instructions. Computer system 102 also includes anoptional alphanumeric input device 214 including alphanumeric andfunction keys coupled to bus 204 for communicating information andcommand selections to processor 206A or processors 206A, 206B, and 206C.Computer system 102 also includes an optional cursor control device 216coupled to bus 204 for communicating user input information and commandselections to processor 206A or processors 206A, 206B, and 206C. In oneembodiment, computer system 102 also includes an optional display device218 coupled to bus 204 for displaying information.

Referring still to FIG. 2, optional display device 218 of FIG. 2 may bea liquid crystal device, cathode ray tube, plasma display device,projector, or other display device suitable for creating graphic imagesand alphanumeric characters recognizable to a user. Optional cursorcontrol device 216 allows the computer user to dynamically signal themovement of a visible symbol (cursor) on a display screen of displaydevice 218 and indicate user selections of selectable items displayed ondisplay device 218. Many implementations of cursor control device 216are known in the art including a trackball, mouse, touch pad, joystickor special keys on alphanumeric input device 214 capable of signalingmovement of a given direction or manner of displacement. In anotherembodiment, a motion sensing device (not shown) detect movement of ahandheld computer system. Examples of a motion sensing device inaccordance with various embodiments include, but are not limited to,gyroscopes, accelerometers, tilt-sensors, or the like. Alternatively, itwill be appreciated that a cursor can be directed and/or activated viainput from alphanumeric input device 214 using special keys and keysequence commands. Computer system 102 is also well suited to having acursor directed by other means such as, for example, voice commands. Inanother embodiment, display device 218 comprises a touch screen displaywhich can detect contact upon its surface and interpret this event as acommand. Computer system 102 also includes an I/O device 220 forcoupling computer system 102 with external entities. For example, in oneembodiment, I/O device 220 is a modem for enabling wired or wirelesscommunications between system 102 and an external network such as, butnot limited to, the Internet.

Referring still to FIG. 2, various other components are depicted forcomputer system 102. Specifically, when present, an operating system222, applications 224, modules 226, and data 228 are shown as typicallyresiding in one or some combination of computer usable volatile memory208 (e.g., RAM), computer usable non-volatile memory 210 (e.g., ROM),and data storage unit 212. In some embodiments, all or portions ofvarious embodiments described herein are stored, for example, as anapplication 224 and/or module 226 in memory locations within RAM 208,computer-readable storage media within data storage unit 212, peripheralcomputer-readable storage media 202, and/or other tangiblecomputer-readable storage media.

FIG. 3 shows information management network 100 in accordance with anembodiment. As shown in FIG. 3, reporting source 110 receives data suchas task data 131 from a handheld tools 120-A, 120-B, 120-C3-120-n. Inaccordance with various embodiments, positioning infrastructure 140 cangenerate data to a plurality of handheld tools 120 based uponinformation received via reports 150.

Similarly, reporting source 110 can also receive data from other sourcessuch as operator(s) 310, consumables 320, materials 330, and otherassets 340. Identification of these various data sources can be detectedand reported automatically, or manually by operator 310 via userinterface 130. In accordance with various embodiments, reporting source110 can comprise a dedicated user interface 130, and other data sensingdevices such as, but not limited to, radio-frequency identification(RFID) readers, magnetic card readers, barcode readers, or image capturedevices which utilize image recognition software o identify objects. Inaccordance with one embodiment, assets 340 comprise devices such as aircompressors, extension cords, batteries, equipment boxes, fireextinguishers, or other equipment which are used at the constructionsite. As a result, information management system 101 can integrate datafrom a variety of sources in order to facilitate workflow, monitorperformance, update blueprints 105 on areal-time basis, and generatereports based upon the received information.

FIG. 4 is a flowchart of a method 400 for managing information at aconstruction site in accordance with one embodiment. The flow chart ofmethod 400 includes some procedures that, in various embodiments, arecarried out by one or more processors under the control ofcomputer-readable and computer-executable instructions. In this fashion,procedures described herein and in conjunction with the flow chart ofmethod 400 are, or may be, implemented in an automated fashion using acomputer, in various embodiments. The computer-readable andcomputer-executable instructions can reside in any tangible,non-transitory computer-readable storage media, such as, for example, indata storage features such as peripheral computer-readable storage media202, RAM 208, ROM 210, and/or storage device 212 (all of FIG. 2) or thelike. The computer-readable and computer-executable instructions, whichreside on tangible, non transitory computer-readable storage media, areused to control or operate in conjunction with, for example, one or somecombination of processor(s) 206 (see FIG. 2), or other similarprocessor(s). Although specific procedures are disclosed in the flowchart of method 400, such procedures are examples. That is, embodimentsare well suited to performing various other procedures or variations ofthe procedures recited in the flow chart of method 400. Likewise, insome embodiments, the procedures in the flow chart of method 400 may beperformed in an order different than presented and/or not all of theprocedures described may be performed. It is further appreciated thatprocedures described in the flow chart of method 400 may be implementedin hardware, or a combination of hardware with firmware and/or software.

In operation 410 of FIG. 4, task data is received from a handheld toolat construction site. As described above, handheld tool 120 isconfigured to generate task data which is sent via reporting source 110to information management system 101.

In operation 420 of FIG. 4, a database is populated with the task datasuch that the task data can be retrieved from the database. In oneembodiment, task data 131 is received in asset report 111. This data canbe stored in database 103 for later use such as to generate reports 150.The task data 131 can also be used to automatically update blueprints105 to reflect the as-built configuration of a building or otherstructure. The term “as-built” means the actual configuration offeatures within the building which may, or may not, differ from theoriginal blueprints. For example, a pipe may have to be routed around abeam in the original blueprints. However, as the building is beingconstructed, it is discovered that the pipe in fact does not have to berouted around the beam. Thus, the as-built configuration found in theupdated blueprints shows he location of the pipe which was not routedaround the beam. In accordance with various embodiments, the location,disposition, and configuration of structural elements, or othercomponents, at a construction site cat be recorded and reported usinginformation management network 100. For example, handheld tool 120,positioning infrastructure 140, or reporting source 110 can beconfigured to report the completion of tasks, including parametersimplemented in the completion of those tasks, to information managementsystem 101.

In operation 430 of FIG. 4, the task data is used to generate at leastone report. In accordance with one embodiment, the task data 131 is usedto update records at information management system 101. As a result,report 150 can generate instructions, messages, warnings, or the likebased upon real-time conditions at the building site.

Example Configurations of Components of Information Management Network

FIGS. 5A, 5B, and 5C show different configurations of components ofinformation management network, in accordance with various embodiments.It is noted the configurations shown in FIGS. 5A, 5B, and 5C are forpurposes of illustration only and that embodiments of the presenttechnology are not limited to these examples alone. In FIG. 5A, anoperator device 510 (e.g., handheld tool 120) comprises reporting source110, user interface 130, tool position detector 121, positioninginfrastructure 140, and sensors 550.

In accordance with one embodiment, operator device 510 is a stand-alonedevice coupled with a housing 520. In accordance with variousembodiments, housing 520 is comprised of a rigid or semi rigid materialor materials. In one embodiment, all or a portion of housing 520 is madeof an injection molded material such as high impact strengthpolycarbonate. In one embodiment, housing 520 is transparent to globalnavigation satellite system (GNSS) satellite signals such as signalswhich can be received by tool position detector 121 and/or positioninginfrastructure 140. In the embodiment of FIG. 5A, operator device 510 isconfigured to be coupled with handheld tool 120. For example, operatordevice 510 can be removably coupled with handheld tool 120 using, aclip-on bracket. In another embodiment, operator device 510 can becoupled with handheld toot 120 using mechanical fasteners such asscrews. While not shown in FIG. 5A, when operator device 510 isconfigured as a stand-alone device it is powered by a battery.

In another embodiment, operator device 510 comprises an integralcomponent of handheld tool 120. In this embodiment, housing 520comprises the housing of handheld tool 120 itself. In one embodiment,operator device 510 can draw power directly from handheld tool 120.

In accordance with various embodiments, sensors 550 comprise deviceswhich collect information for operator device 510. Examples of sensors550 include, but are not limited to, an image capture device (orplurality thereof), a depth camera a laser scanner, an ultrasonicranging device, a laser range finder, a barcode scanner, an RFID reader,or the like. Sensors 550 may also identify an operator via wirelesscommunication with an operator identification device (e.g., a badge withan RFID coded with opera or unique information). A barcode scanner, orRFID reader, can be used to quickly identify objects, or consumablesused by handheld tool 120. For example, each drill bit, saw blade, orother consumable can be configured with a barcode, or RFID tag, whichprovides a unique identifier of that object. Using this information,operator device 510 can access information which correlates thatidentifier with other characteristics of that object. As an example, adrill bit can be provided with an RFID tag providing a unique identifierto operator device 510. Operator device 510 then accesses a local, orremote, database and determines that the identified object is a ¾ inchdrill bit which is 8 inches long. This information can be used byoperator device 510 to facilitate properly performing a task as well asprovide information which can be included in task data 131 which isforwarded to information management system 101. In one embodiment,operating parameters of operator device 510 can be configured, eithermanually or automatically, based upon information from report 150 frominformation management system 101. This information can be used by theoperator of handheld tool 120 to verify that he is using the correctdrill bit, as well as for later verification that the task was performedup to standard. Also, data can be sent from operator device 510conveying its settings or operating parameters back to informationmanagement system 101. A user of information management system 101 canalso use this information to track the use of that drill bit todetermine whether it is time to replace it. In another example, sensors550 can verify that the correct type of fire-proofing material was usedby the operator of handheld tool 120. The use of a camera allows anoperator of handheld tool 120 to capture an image of the work performedto verify that the task was performed correctly such as at the correctlocation and in a manner which complies with applicable standards. It isnoted that a plurality of operator devices 510 can be communicativelycoupled in a mesh network to permit communications between a pluralityof handheld tools 120. Thus, in one embodiment, one handheld tool 120can relay information to a second handheld tool 120. Operator device 510can also determine and forward information regarding what materials wereused to perform a task (e.g., what type of fastener was used), as wellas parameters about the task which was performed such as the torqueapplied to a nut, or the force used to drive an anchor into a substrate.Operator device 510 can also provide real-time metrics during the courseof the task being performed. This permits remote monitoring and/orcontrol of the process from another location such as from informationmanagement system 101.

In FIG. 5B, operator device 510 comprises reporting source 110, userinterface 130, tool position detector 121, and sensors 550. A separatebuilding site device 530 comprising positioning infrastructure 140 islocated in the vicinity of operator device 510. Positioninginfrastructure 140 comprises sensors, wired and wireless communicationcomponents, processors, and software instructions which are disposed ina housing 540 and which facilitate building site device 530 ingenerating instructions to operator device 510. A more detaileddescription of these components follows with reference to FIG. 6.

In accordance with various embodiments, building site device 530 isconfigured to receive report(s) 150 from information management system101 and to relay some or all of this information to operator device 510.In accordance with various embodiments, building site device 530 can beprecisely placed at a set of coordinates in the vicinity of theconstruction site. By determining the azimuth, direction, and elevationfrom building site device 530 to other points, building site device 530can provide positioning cues to operator device to assist an operator inproperly placing handheld tool 120 to perform a task. This is possiblein part because building site device 530 receives instructions viareport 150 such as blueprints 105. Building site device 530 cancorrelate the features shown in blueprints 105 with its current positionto determine where those features are to be located at the buildingsite. Furthermore, avoidance zones can be defined where certain actionsare not permitted. For example, if rebar is embedded 6 inches deepwithin a concrete pillar, it may be permissible to drill down 2 inchesinto the pillar above the rebar, but no deeper to prevent inadvertentlyhitting the rebar. It may be necessary to use a certain type of adhesivefor a task based upon the substances being glued. In accordance withembodiments of the present technology, this information can be sent tooperator device 510 through information management network 100.

As an example, building site device 530 can be placed in a space of abuilding where a room is being built. Using, for example, a GNSSreceiver, building site device 530 can precisely determine its owngeographic position. Using the information from blueprints 105, buildingsite device 530 can then determine where features of that room are to belocated. For example, building site device 530 can determine thelocation and distance to the walls of the room being built, as well asother features such as pipes, conduits, structural members and the likewhich will be disposed in the space behind the wall. It is important foran operator of handheld tool 120 to know the location of these featuresas well in order to prevent inadvertent damage, or to perform taskswhich are intended to tie in with these features. For example, it may bedesired to drill through sheetrock into underlying studs in a wall.Building site device 530 can determine where these features are locatedrelative to its own position by leveraging the knowledge of its ownposition and the data from blueprints 105.

In accordance with various embodiments, building site device 530 is alsoconfigured to detect the position and/or orientation of handheld tool120 and to generate instructions which facilitate correctly positioningand orienting it to perform a task. For example, if a hole is to bedrilled in a floor, building site device 530 can access blueprints 105and determine the location, angle, and desired depth of that hole andcorrelate that information with the location and orientation of handheldtool 120. Building site device 530 then determines where that hole is tobe located relative its own location. Building site device 530 thengenerates one or more messages to operator device 510 which providepositioning cues such that an operator of handheld tool 120 cancorrectly position the working end (e.g., the drill bit tip) at thelocation where the hole is to be drilled. It is noted that a series ofcommunications between building site device 530 and operator device 510may occur to correctly position the working end of handheld tool 120 atthe correct location.

Additionally, building site device 530 may use position and/ororientation information generated by tool position detector 121 tofacilitate the process of positioning and orienting handheld tool 120.In one embodiment, once the working end of handheld tool 120 iscorrectly positioned, building site device 530 can generate one or moremessages to facilitate correctly orienting handheld tool 120. This is tofacilitate drilling the hole at the correct angle as determined byblueprints 105. It is noted that these actions can be performed byoperator device 510 of FIG. 5A as described above. In accordance withvarious embodiments, multiple building site devices 530 can bepositioned at a construction site which are communicatively coupled witheach other in a mesh network and with one or more handheld tools 120. Itis noted that in one embodiment, user interface 130 comprises anoperator wearable transparent display which projects data, such as thelocation of hidden structures (e.g., pipes or rebar to the operator. Forexample heads-up display (HUD) glasses exist which use an organic lightemitting diode (OLED) to project data for a wearer. In one embodiment, awearer of these glasses can see a projection of objects which theoperator may want to avoid such as rebar, as well the position at whicha task is to be performed. For example, if a hole is to be drilled at acertain location, that location can be projected onto the glasses sothat when a user is looking at a wall, the position where the hole willbe drilled is displayed by the glasses at the proper location on thewall. Building site device 530 can provide data or images which areprojected or displayed directly by a LED or laser projector, or by suchHUD glasses, and additionally such HUD glasses may serve a dual purposeof providing eye protection (e.g., as safety glasses) for an operatorwhen operating an handheld tool.

In FIG. 5C, operator device 510 comprises a user interface 130, toolposition detector 121, and sensors 550 while building site device 530comprises reporting source 110, user interface 130, and positioninginfrastructure 140. FIG. 5C represents an embodiment in which thefunctions of reporting source 110 and positioning infrastructure 140 areremoved from the operator of handheld tool 120, or from handheld tool120 itself. In one embodiment, building site device 530, as representedin FIGS. 5B and 5C, can provide positioning and/or orientationinformation to a plurality of operator devices 510. It is noted that inaccordance with various embodiments, user interface 130 may beconfigured differently. For example, in one embodiment, user interface130 comprises a touch screen display which is capable of displayingcharacters, menus, diagrams, images, and other data for an operator ofhandheld tool 120. In another embodiment, user interface may comprise anarray of LED lights which are configured to provide visual cues whichfacilitate positioning the working end of handheld tool 120 at a givenposition and the alignment of handheld tool 120 as well. In oneembodiment, the display of visual cues is in response to messagesgenerated by building site device 530 and/or operator device 510.

There are a variety of instruments which can be configured to serve thefunction of building site device 530. One example instrument which canbe configured to perform the functions of building site device 530 is apseudolite which is used to provide localized position information, suchas GNSS signal data to operator device 510. Another example instrumentwhich can be configured to perform the functions of building site device530 is a robotic total station. One example of a robotic total stationis the S8 Total station which is commercially available from TrimbleNavigation Limited of Sunnyvale, California. Another example of aninstrument which can be configured to perform the functions of buildingsite device 530 is a virtual reference station (VRS) rover which usesnetworked real-time kinematics corrections to determine its locationmore precisely. One example of a VRS rover is the R8 VRS which iscommercially available from Trimble Navigation Limited of Sunnyvale,Calif.

Example Positioning Infrastructure

FIG. 6 is a block diagram of an example positioning infrastructure 140in accordance with one embodiment. In FIG. 6, positioning infrastructure140 comprises sensors 610, a data receiver 620, one or morecommunication transceivers 630, an antenna 640, and a power source 650.In accordance with various embodiments, sensors 610 a configured todetect objects and features around positioning infrastructure 140. Someobjects include, but are not limited to, handheld tool 120, operators310, consumables 320, materials 330, and assets 340 as described in FIG.3. Sensors 610 are also configured to detect objects pertaining to aconstruction site such as buildings, wall, pipes, floors, ceilings,vehicles, etc. Sensors 610 further comprise devices for determining theposition of positioning infrastructure 140 such as a GNSS receiver(e.g., GNSS receiver 1000 of FIG. 10), radio receiver(s), and the like.In another embodiment, the position of positioning infrastructure 140can be manually entered by an operator using a user interface 130coupled therewith. It is noted that other objects and features describedabove can also be manually entered via user interface 130 as well.Examples of sensors 610 in accordance with various embodiment include,but are not limited to, an image capture device, or plurality thereof,an ultrasonic sensor, a laser scanner, a laser range finder, barcodescanner, an RFID reader, sonic range finders, a magnetic swipe cardreader, a radio ranging device, or the like. It is noted thatinformation received via communication transceiver(s) 630 can also beused to detect and/or identify features and objects as well. Inaccordance with one embodiment, photogrammetric processing of a capturedimage (e.g., by information management system 101, or positioninginfrastructure 140) can be used to detect and/or identify features andobjects.

In one embodiment, the location of cameras for photogrammetricprocessing can be determined by information management system 101 basedupon what task is to be performed. For example, if a particular wall isto be drilled, information management system 101 can determine where toplace cameras in order to capture images which facilitatephotogrammetric processing to determine various parameters of the taskbeing performed. Thus, the location where the working end of the drillbit, depth of drilling, angle of drilling, and other parameters can bedetermined using photogrammetric processing of images captures bysensors 610. Alternatively, a user can choose where to place the camerasin order to capture images to be used in photogrammetric processing. Itanother embodiment, cameras can be placed in each corner of a room tocapture images of the entire area. In accordance with one embodiment,positioning infrastructure 140 can calculate the respective positions ofcameras within a work space by detecting known points from a BIM model.For example, I-beams, or room corners, can be readily identified and,based on their known position, the position of the cameras which havecaptured those features can be determined. Again, this processing ofimages, as well as other photogrammetric processing, can be performed byinformation management system 101 and/or positioning infrastructure 140.

In accordance with one embodiment, when handheld tool 120 is broughtinto a workspace in which the cameras have been placed, it is capturedby at least one camera and its position can be determined by imagerecognition and triangulation. The orientation of handheld tool 120 canbe determined using multiple cameras to determine the roll, pitch, andyaw. Also, the position of the working end of handheld tool 120 can beprocessed in a similar manner. In accordance with one embodiment, thisinformation can be conveyed to handheld tool 120 to provide real-timefeedback to an operator of the position and orientation of handheld tool120. In one embodiment, the cameras comprising sensors 610 can viewmultiple handheld tools 120 simultaneously and provide real-timeposition and orientation information respective operators of thosehandheld tools. Additionally, new cameras can be added to adjacent ornext work areas and integrated into existing area camera networks tofacilitate moving handheld tool 120 to other areas, or to extendcoverage of positioning infrastructure 140 in large areas where cameraangle and/or range is not adequate.

Data receiver 620 comprises a computer system similar to that describedabove with reference to FIG. 2. In accordance with various embodiments,data receiver 620 receives reports 150, or other data, and uses thisinformation to generate messages to, for example, operator device 510.As described above, reports 150 can convey CAD files, or other buildinginformation modeling data, which describes the location where variousobjects and structures are to be built at a construction site. Becausepositioning infrastructure 140 is aware of its own geographic position,it can correlate where these objects and structures are to be locatedrelative to its own location in a local or global coordinate system. Asan example, the angle and distance to each pixel in a captured image canbe calculated by data receiver 620 in one embodiment. In accordance withvarious embodiments, positioning infrastructure 140 can generatemessages and instructions to operator device 510 which assist inpositioning and orienting handheld tool 120 to perform a task. It isnoted that some components as described above with reference to FIG. 2,such as processors 206B and 206C, may be redundant in the implementationof data receiver 620 and can therefore be excluded in one embodiment. Itis noted that information relating to settings of handheld tool 120 canbe relayed via data receiver 620. For example, leveraging knowledge of amaterial which is being worked on, information on the desired operatingparameters (e.g., speed, torque, RPMs, impact energy, etc.) for handheldtool 120 can be forwarded directly to handheld tool 120. As a result,operator error in setting the parameters for a handheld tool 120 can bereduced.

Communication transceivers 630 comprise one or more wireless radiotransceivers coupled with an antenna 640 and configured to operate onany suitable wireless communication protocol including, but not limitedto, WiFi, WiMAX, WWAN, implementations of the IEEE 802.11 specification,cellular, two-way radio, satellite-based cellular (e.g., via theInmarsat or Iridium communication networks), mesh networking,implementations of the IEEE 802.15.4 specification for personal areanetworks, and implementations of the Bluetooth® standard. Personal areanetwork refer to short-range, and often tow-data rate, wirelesscommunications networks. In accordance with various embodiments,communication transceiver(s) 630 are configured to automatic detectionof other components (e.g., communication transceiver(s) 720, 820, and920 of FIGS. 7, 8, and 9 respectively) and for automaticallyestablishing wireless communications. It is noted that one communicationtransceiver 630 can be used to communicate with other devices in thevicinity of positioning infrastructure 140 such as in an ad-hoc personalarea network while a second communication transceiver 630 can be used tocommunicate outside of the vicinity positioning infrastructure 140(e.g., with information management system 101). Also shown in FIG. 6 isa power source 650 for providing power to positioning infrastructure140. In accordance with various embodiments, positioning infrastructure140 can receive power via an electrical cord, or when implemented as amobile device by battery.

Example Reporting Source

FIG. 7 is a block diagram of an example reporting source 110 inaccordance with one embodiment. In the embodiment of FIG. 7, reportingsource 110 comprises a data receiver 710, a communication transceiver(s)720, an antenna 730, and a power source 740. For the purposes ofbrevity, the discussion of computer system 102 in FIG. 2 is understoodto describe components of data receiver 710 as welt Data receiver 710 isconfigured to receive task data 131 generated by, for example, operatordevice 510 and building site device 530 which describe events,conditions, operations, and objects present at a construction site. Datareceiver 710 is also configured to convey this task data 131 in the formof an asset report 111 to information management system 101. It is notedthat asset report 111 may comprise an abbreviated version of the taskdata 131, or may comprise additional data in addition to task data 131.In one embodiment, asset report 111 comprises a compilation of multipleinstances of task data collected over time from a single operator device510, or building site device 530. In another embodiment, asset report111 comprises a compilation of multiple instances of task data 131generated by a plurality of operator devices 510, or building sitedevices 530. In accordance with various embodiments, reporting source110 can generate asset report 111 periodically when a pre-determinedtime interval has elapsed, as a result of a request or polling frominformation management system 101, or as a result of receiving task data131 from an operator device 510 or building site device 530. It is notedthat a user of operator device 510 or building site device 530 can alsoinitiate generating asset report 111.

Reporting source 110 further comprises communication transceiver(s) 720which are coupled with antenna 730 and a power source 740. Again, forthe purposes of brevity, the discussion of communication transceiver(s)630, antenna 640, and power source 650 of FIG. 6 is understood todescribe communication transceiver(s) 720, antenna 730, and power source740, respectively, of reporting source 110 as well.

Example Tool Position Detector

FIG. 8 is a block diagram of an example tool position detector 121 inaccordance with one embodiment. In FIG. 8, tool position detector 121comprises an optional position determination module 810, communicationtransceiver(s) 820, antenna 830, and orientation sensors 840. Inaccordance with various embodiments, tool position detector 121 isconfigured to detect and report the orientation, and optionally, theposition of handheld tool 120. It is noted that in accordance withvarious embodiments, the position of handheld toot 120 can be determinedby building site device 530 rather than a device co-located withhandheld tool 120. In one embodiment, position determination module 810comprises a GNSS receiver (e.g., GNSS receiver 1000 of FIG. 10), oranother system capable of determining the position of handheld tool 120with a sufficient degree of precision. It is noted hat the position of,for example, antenna 1032 of FIG. 10, cat be offset by a user interface130 coupled with handheld device to more precisely reflect the workingend of handheld tool 120. For example, if handheld tool 120 is coupledwith a drill bit, user interface 130 of operator device 510 can apply anoffset (e.g., 3 centimeters lower and 100 centimeters forward of theposition of antenna 1032). In another embodiment, position determinationmodule 810 utilizes a camera which captures images of structures andimplements photogrammetric processing techniques to these images todetermine the position of handheld tool 120. In at least one embodiment,the captured image can be sent to another component of informationmanagement network 100 (e.g., to information management system 101, orto positioning infrastructure 140) to perform the photogrammetricprocessing of the image captured by position determination module 810.In one embodiment, operator device 510 can use sensors 550 canautomatically provide information which identifies a consumable coupledwith which handheld tool 120 is coupled. Operator device 510 can thenidentify characteristics of that consumable so that the working end ofhandheld tool 120, when coupled with that consumable, can be known.Alternatively, information identifying a consumable can be manuallyentered by an operator of handheld tool 120 via user interface 130.

Again, for the purposes of brevity, the discussion of communicationtransceiver(s) 630 and antenna 640 of FIG. 6 is understood to describecommunication transceiver(s) 820 and antenna 830 respectively ofreporting source tool position detector 121 as well. Orientationsensor(s) 840 are configured to determine the orientation of handheldtool 120 in both an X Y plane, as well as tilt of handheld tool 120around an axis. lit accordance with various embodiments, orientationsensors comprise, but are not limited to, azimuth determination devicessuch as electronic compasses, as well inclinometers (e.g., operable fordetermination of tilt in 3 axes), gyroscopes, accelerometers, depthcameras, multiple GNSS receivers or antennas, magnetometers, distancemeasuring devices, etc., which can determine whether handheld tool 120is correctly aligned along a particular axis to perform a task. Thisfacilitates correctly orienting/aligning handheld tool 120 above adesignated position in order perform a task. Using a drill as anexample, once the end of the drill bit coupled with handheld tool 120has been positioned above the location where the hole is to be drilled(e.g., using cues provided by position determination module 810 and/or aGNSS receiver 1000 disposed within positioning infrastructure 140 ofoperator device 510 and/or building site device 530) orientation sensors840 are used to determine whether handheld tool 120 is property alignedto drill the hole as desired. It is noted that in one embodiment, aseries of communications between operator device 510 and building sitedevice 530 may be exchanged in the process of correctlyorienting/aligning handheld tool 120. In one embodiment, tool positiondetector 121 communicates with a user interface 130 of operator device510 to provide cues to guide the operator of handheld tool 120 incorrectly aligning handheld tool 120 along the correct axis. As theoperator changes the axis of handheld tool 120 in response to visualcues displayed on user interface 130, orientation sensors 840 willdetermine the orientation/alignment of handheld tool 120. When it isdetermined that handheld tool 1120 is aligned within pre-determinedparameters, an indication is displayed and/or annunciated to theoperator of handheld tool 120 via user interface 130.

Example User Interface

FIG. 9 is a block diagram of an example user interface 1130 inaccordance with one embodiment. In FIG. 9, user interface 130 comprisesa data receiver 910, communication transceiver(s) 920 coupled withantenna 930, and a power source. For the purposes of brevity, thediscussion of computer system 102 in FIG. 2 is understood to describecomponents of data receiver 910 as well. Also, for the purposes ofbrevity, the discussion of communication transceiver(s) 630, antenna640, and power source 650 of FIG. 6 is understood to describecommunication transceiver(s) 920, antenna 930, and power source 940respectively of user interface 130 as well. The user interface 130 iscapable of communicating with tool position detector 121, is operablefor receiving data, displaying data to an operator of handheld tool 120,detecting and/or selecting materials, assets, consumables, andpersonnel, reporting operating parameters of handheld tool 120, andreporting task data describing the performance of a task. In oneembodiment, user interface 130 is coupled with, or is integral to,handheld tool 120. In another embodiment, user interface 130 can bedisposed in a separate device (e.g., operator device 510 or buildingsite device 530). As discussed above, in one embodiment user interface130 comprises a user wearable display such as a set of heads-up displayglasses.

Example GNSS Receiver

FIG. 10, shows an example GNSS receiver 1000 in accordance with oneembodiment. It is appreciated that different types or variations of GNSSreceivers may also be suitable for use in the embodiments describedherein. In FIG. 10, received L1 and L2 signals are generated by at leastone GPS satellite. Each GPS satellite generates different signal L1 andL2 signals and they are processed by different digital channelprocessors 1052 which operate in the same way as one another. FIG. 10shows GPS signals (L1=1575.42 MHz, L2=1227.60 MHz) entering GNSSreceiver 1000 through a dual frequency antenna 1032. Antenna 1032 may bea magnetically mountable model commercially available from TrimbleNavigation of Sunnyvale, Calif. Master oscillator 1048 provides thereference oscillator which drives all other clocks in the system.Frequency synthesizer 1038 takes the output of master oscillator 1048and generates important clock and local oscillator frequencies usedthroughout the system. For example, in one embodiment frequencysynthesizer 1038 generates several timing signals such as a 1st (localoscillator) signal LO1 at 1400 MHz, a 2nd local oscillator signal LO2 at175 MHz, an SCLK (sampling clock) signal at 25 MHz, and a MSEC(millisecond) signal used by the system as a measurement of localreference time.

A filter/LNA (Low Noise Amplifier) 1034 performs filtering and low noiseamplification of both L1 and L2 signals. The noise figure of GNSSreceiver 1000 is dictated by the performance of the filter/LNAcombination. The downconvertor 1036 mixes both L1 and L2 signals infrequency down to approximately 175 MHz and outputs the analogue L1 andL2 signals into an IF (intermediate frequency) processor 1050. IFprocessor 1050 takes the analog L1 and L2 signals at approximately 175MHz and converts them into digitally sampled L1 and L2 inphase (L1 I andL2 I) and quadrature signals (L1 Q and L2 Q) at carrier frequencies 420KHz for L1 and at 2.6 MHz for L2 signals respectively. At least onedigital channel processor 1052 inputs the digitally sampled L1 and L2inphase and quadrature signals. All digital channel processors 1052 aretypically are identical by design and typically operate on identicalinput samples. Each digital channel processor 1052 is designed todigitally track the L1 and L2 signals produced by one satellite bytracking code and carrier signals and to from code and carrier phasemeasurements in conjunction with the microprocessor system 1054. Onedigital channel processor 1052 is capable of tracking one satellite inboth L1 and L2 channels. Microprocessor system 1054 is a general purposecomputing device which facilitates tracking and measurements processes,providing pseudorange and carrier phase measurements for a navigationprocessor 1058. In one embodiment, microprocessor system 1054 providessignals to control the operation of one or more digital channelprocessors 1052. Navigation processor 1058 performs the higher levelfunction of combining measurements in such a way as to produce position,velocity and time information for the differential and surveyingfunctions. Storage 1060 is coupled with navigation processor 1058 andmicroprocessor system 1054. It is appreciated that storage 1060 maycomprise a volatile or non-volatile storage such as a RAM or ROM, orsome other computer-readable memory device or media. In one roverreceiver embodiment, navigation processor 1058 performs one or more ofthe methods of position correction.

In some embodiments, microprocessor 1054 and/or navigation processor1058 receive additional inputs for use in refining position informationdetermined by GNSS receiver 1000. In some embodiments, for example,corrections information is received and utilized. Such correctionsinformation can include differential GPS corrections, RTK corrections,and wide area augmentation system (WAAS) corrections.

Automated Hand Tool Task Verification

While it is important to record information such as the parameters of ahole which has been drilled, it is also important to collect and recorddata regarding the application or installation of components andmaterials. As an example, it is important to know the specifications offastening elements, such as anchors. which are used to ensure that thecorrect anchor is being installed. It is also important to know theinstallation parameters such as the depth a mechanical fastener wasinstalled, the torque or force applied when installing a mechanicalfastener, the amount and type of adhesive applied, etc. As describedabove, embodiments of the present technology permit automaticallyverifying tools, materials, and other assets which are used whenperforming tasks at a site. Thus, using operator device 510, an operatorcan verify that the correct fastener or material is being used for atask. The operator can similarly verify that the correct drivers forinstalling the fastener for performing a particular task are installedin handheld tool 120 before and/or during performance of the task.Similarly, the operator can similarly verify that the correctreplaceable working end (e.g., bit, blade, chisel, driver, or the like)for performing a particular task are installed in handheld tool 120before and/or during performance of the task. The operator can alsoreceive operating parameters for handheld toot 120 for a task. Asdescribed above, the operating parameter can be automaticallyimplemented by handheld tool 120 and can be verified both by theoperator of handheld tool 120 and by information management system 101.During the actual performance of the task, handheld tool 120 can monitorwhether the operating parameters are being met, or whether a generatinga warning or cessation of operations is appropriate. Thus, handheld tool120 is capable of determining whether a task has been performed inaccordance with the designated operating parameters and can generate amessage which indicates whether the task has been completed inaccordance with the designated parameters, or whether the parametershave not been met and the task should be repeated. Again, all of thisinformation is conveyed via information management network 100 and canbe done in a manner which is transparent to the operator of handheldtool 120. Furthermore, this information can be used to update inreal-time the blueprints 105 so that they reflect an as-builtconfiguration of a building. Also, this information can be used inquality assurance and building inspection situations to verify, forexample, that the correct fastener was installed in a correctly drilledhole and that the correct amount of force was applied when the fastenerwas installed. In one embodiment, handheld tool 120 can capture theoperating parameters of a task it is performing and either convey thoseparameters to information management system 101 via asset report 111, orgenerate an updated record which is conveyed to information managementsystem 101.

FIG. 11 is a flowchart of a method 1100 for automated handheld tool taskverification, in accordance with at least one embodiment. The flow chartof method 1100 includes some procedures that, in various embodiments,are carried out by one or more processors under the control ofcomputer-readable and computer-executable instructions. In this fashion,procedures described herein and in conjunction with the flow chart ofmethod 1100 are, or may be, implemented in an at mated fashion using acomputer, in various embodiments. The computer-readable andcomputer-executable instructions can reside in any tangible,non-transitory computer-readable storage media, such as, for example, indata storage features such as peripheral computer-readable storage media202, RAM 208, ROM 210, and/or storage device 212 (all of FIG. 2) or thelike. The computer-readable and computer-executable instructions, whichreside on tangible, non-transitory computer-readable storage media, areused to control or operate in conjunction with, for example, one or somecombination of processor(s) 206 (see FIG. 2), or other similarprocessor(s). Although specific procedures are disclosed in the flowchart of method 1100, such procedures are examples. That is, embodimentsare well suited to performing various other procedures or variations ofthe procedures recited in the flow chart of method 1100. Likewise, insome embodiments, the procedures in the flow chart of method 1100 may beperformed in an order different than presented and/or not all of theprocedures described may be performed. It is further appreciated thatprocedures described in the flow chart of method 1100 may be implementedin hardware, or a combination of hardware with firmware and/or software,

In operation 1110, at least one operating parameter for performing atask is received at a handheld tool. For example, the handheld tool mayverify that the type of working end was installed in the tool duringperformance of the task, the force applied to the work end, the lengthof time taken to perform the task and/or other information that can bemeasured and recorded by the tool regarding the operation or use of thetool in performance of the task. In various embodiments, informationmanagement system 101 is used to access information describing a task.For example, the task may be setting a fastener with the handheld tool.Among the data which can be stored at information management system 101are plans (e.g., blueprints 105, CAD drawings, etc.), schedules, listsof tasks and materials, and the like which are used during theconstruction process. As described above, this data can be updated inreal-time and changed to reflect the current as-built configuration of aproject. As a result, schedules and tasks can also be updated inreal-time to prevent scheduling conflicts, prevent damage to finishedstructures and tasks, and to change the order of tasks based upon thecurrent as-built configuration of the project. In accordance withvarious embodiments, some, or all, of the tasks performed to complete aproject may have prescribed standards or parameters for performing thetask. As an example, a mechanical fastener may have to be tightened to aspecified minimum torque in order to comply with building codes. Inaccordance with various embodiments, these standards can be stored atinformation management system 101 and accessed when an operator is readyto perform a specific task, the operator can send a message toinformation management system 101. In response, information managementsystem 101 can look up the task and, if there are parameters forperforming the task specified, send these parameters to the operator'shandheld tool 120 via positioning infrastructure 140.

In operation 1120 of FIG. 11, it is verified at the handheld tool thatit is configured with the at least one operating parameter. For example,the handheld tool 120 may verify that it has the correct bit, blade,driver, or other working end installed. This may also involve thehandheld tool disabling operation if not configured properly based onreceived operating parameters for a task. In accordance with variousembodiments, some, or all, of the tasks performed to complete a projectmay have prescribed standards or parameters for performing the task. Asan example, a mechanical fastener may have to be tightened to aspecified minimum torque in order to comply with building codes. Inaccordance with various embodiments, these standards can be stored atinformation management system 101 and accessed when an operator is readyto perform a specific task, the operator can send a message toinformation management system 101. In response, information managementsystem 101 can look up the task and, if there are parameters forperforming the task specified, send these parameters to the operator'shandheld tool 120 via positioning infrastructure 140.

In operation 1130 of FIG. 11, data is generated by the handheld toolthat the task was performed in accordance with the at least oneoperating parameter. For example, the handheld tool 120 may verify thatthe type of working end was installed in the tool during performance ofthe task, the force applied to the work end, the length of time taken toperform the task and/or other information that can be measured andrecorded by the tool regarding the operation or use of the tool inperformance of the task. In at least one embodiment, handheld tool 120can generate data which indicates its operating parameters. This datacan be sent from handheld tool 120 prior to beginning the task, or afterthe task has been completed to verify the operating parameters ofhandheld tool 120 while the task was performed.

For example, as descried above, a camera coupled with handheld tool 120can capture an image, images, or video showing the work before, during,and after it is performed. The captured media can verify that the holewas cleanly drilled, did not damage surrounding structures, and thatexcess material was removed. Similarly, as was discussed above, varioussensors associated with the handheld tool can be used to capture andsend task data 131 associated with the task performed. This task dataprovides metrics for determining how well various operations associatedwith the task have been performed. With respect to setting a fastener,some metrics collected can include, in some embodiments, time taken todrill a hole and/or depth to which hole is drilled. images and/or videomay be captured of the task at various times by the handheld tool. Forexample, in some embodiments, one or more of the following images and/orvideos may be captured and recorded: an image of the area to be workedbefore initiation of the task; an video of the hole being drilled; animage of the drilled hole; an video of the drilled hole being cleaned;an image of the cleaned hole; a video of adhesive being applied in thehole; an image of adhesive applied in the hole; a video of the fastenerbeing set in the hole; and an image of the fastener set in the hole.Although this method has been described with respect to verification ofthe setting of a fastener, it can be applied to verification ofcompletion of other tasks performed using handheld tools.

Embodiments of the present technology are thus described. While thepresent technology has been described in particular embodiments, itshould be appreciated that the present technology should not beconstrued as limited to these embodiments alone, but rather construedaccording to the following claims.

What is claimed is:
 1. A method of automated handheld tool taskverification, said method comprising: receiving, by a handheld tool, atleast one operating parameter for performing a task with said handheldtool; verifying by said handheld tool that it is configured with said atleast one operating parameter; performing in one step, performed by saidhandheld tool, marking a position on a material and performing said taskon said material at said position, wherein said task includes drilling ahole into said material at a location, wherein said location includesone or more structures surrounding said hole: and generating by saidhandheld tool, data verifying that said task was performed in accordancewith said at least one operating parameter, wherein generating said dataincludes: capturing, by a camera coupled to said handheld tool, at leastone image at said location where said task is performed; determining, bya positioning infrastructure separate from said handheld tool, based onsaid at least one image, whether said hole damaged said one or morestructures surrounding said hole; and wherein said positioninginfrastructure further comprises a communication transceiver configuredto generate task data, including said at least one image, verifying thatsaid task was performed in accordance with said operating parameter. 2.The method of claim 1 further comprising: automatically detecting bysaid handheld tool an implement coupled with said handheld tool andwherein said at least one operating parameter is selected based upon anidentification of said implement.
 3. The method of claim 1 furthercomprising: determining a distance said handheld tool has travelledwhile performing said task.
 4. The method of claim 1 further comprising:generating, at said location where said task is performed, an updatedrecord comprising said task; and conveying said updated record to aninformation management system.
 5. The method of claim 1 furthercomprising: receiving the data verifying that said task was performed inaccordance with said at least one operating parameter at an informationmanagement system; and using the data to update a record comprising saidtask.
 6. A system for automated handheld tool task verificationcomprising: a user interface coupled with a handheld tool and comprisinga data receiver configured to receive an operating parameter forperforming a task using said handheld tool; a sensor coupled with saidhandheld tool and configured to determine that said handheld tool isconfigured with said operating parameter; said handheld tool, performingin one step while operated by a single operator, marking a position on amaterial and performing said task on said material at said position,wherein said task includes drilling a hole into said material at alocation, wherein said location includes one or more structuressurrounding said hole; a camera coupled to said handheld tool andconfigured to capture at least one image at said location where saidtask is performed; a positioning infrastructure separate from saidhandheld tool configured to determine, based on said at least one image,whether said hole damaged said one or more structures surrounding saidhole; and wherein said positioning infrastructure further comprises acommunication transceiver configured to generate task data, includingsaid at least one image, verifying that said task was performed inaccordance with said operating parameter.
 7. The system of claim 6further comprising: a first sensor coupled with said handheld tool andconfigured to automatically detect an implement coupled with saidhandheld tool and wherein said operating parameter is selected basedupon an identification of said implement.
 8. The system of claim 6wherein said handheld tool further comprises: a position determinationmodule configured to determine a distance said handheld tool hastravelled while performing said task.
 9. The system of claim 6 whereinsaid handheld tool is communicatively coupled with a reporting sourceconfigured to generate, at said location where said task is performed,an updated record comprising said task and wherein said updated recordis conveyed to an information management system.
 10. The system of claim6 wherein said communication transceiver is further configured togenerate a message conveying said data verifying that said task wasperformed in accordance with said operating parameter to an informationmanagement system which uses said data to update a record comprisingsaid task.
 11. A non-transitory computer-readable media storage mediumcomprising computer executable code for directing a processor to executea method for automated handheld tool task verification, said methodcomprising: receiving, at a handheld tool, at least one operatingparameter for performing a task with said handheld tool; verifying bysaid handheld tool that it is configured with said at least oneoperating parameter; performing in one step, performed by said handheldtool, marking a position on a material and performing said task on saidmaterial at said position, wherein said task includes drilling a holeinto said material at a location, wherein said location includes one ormore structures surrounding said hole: and generating by said handheldtool, data verifying that said task was performed in accordance withsaid at least one operating parameter, wherein generating said dataincludes: capturing, by a camera coupled to said handheld tool, at leastone image at said location where said task is performed; determining, bya positioning infrastructure separate from said handheld tool, based onsaid at least one image, whether said hole damaged said one or morestructures surrounding said hole; and wherein said positioninginfrastructure further comprises a communication transceiver configuredto generate task data, including said at least one image, verifying thatsaid task was performed in accordance with said operating parameter. 12.The non-transitory computer-readable storage medium of claim 11, whereinsaid method further comprises: automatically detecting by said handheldtool an implement coupled with said handheld tool and wherein said atleast one operating parameter is selected based upon an identificationof said implement.
 13. The non-transitory computer-readable storagemedium of claim 11, wherein said method further comprises: determining adistance said handheld tool has travelled while performing said task.14. The non-transitory computer-readable storage medium of claim 11,wherein said method further comprises: generating, at said locationwhere said task is performed, an updated record comprising said task;and conveying said updated record to an information management system.